//@author A0105735J
// This class is for update command
#pragma once
#ifndef COMMANDUPDATE_H
#define COMMANDUPDATE_H
#include "Command.h"
class CommandUpdate: public Command{
private:
	// theEvent is passed by Analyzer, which contains new information to be updated
	Event* theEvent;
	// the display ID of the event to be updated
	int displayID;
	// this pointer points to the event to be updated
	Event* undoUpdateEvent;
public:
	CommandUpdate();
	~CommandUpdate();
	// set the event contains new information
	void setEvent(Event*);
	// set the display ID
	void setID(int);
	virtual Feedback execute(Receiver*);
	virtual Feedback undo(Receiver*);
	Event* getEvent();
};
#endif